package algo3c2g15.vista;

import javax.swing.JDialog;
import javax.swing.JTextArea;

import algo3c2g15.domain.Humano;
import algo3c2g15.domain.Transporte;
import algo3c2g15.domain.Unidad;

public class VentanaEstadoUnidad extends JDialog {
	private static final long serialVersionUID = 1L;

	private static VentanaEstadoUnidad instance = null;	
	private Unidad unidad;	
	private JTextArea texto;

	public VentanaEstadoUnidad(Unidad u) {
		super();
		setLayout(null);
		setBounds(400, 200, 310, 200);
		setResizable(false);
		setAlwaysOnTop(true);
		setVisible(true);		
		this.unidad = u;
		this.setTitle(unidad.getNombre());
		
		texto = new JTextArea();
		texto.setBounds(5, 5, 295, 180);
		texto.setEditable(false);
		
		texto.setText("Region Actual: ");
		texto.append(u.getRegionActual().getNombre() + "\n");
		texto.append("Vida: ");
		texto.append(u.getVida() + "\n");
		texto.append("Ataque: ");
		texto.append(u.getAtaque() + "\n");		
		texto.append("Defensa: " + u.getDefensa()+ "\n");	
		if (u.getClass() == Humano.class){
			texto.append("Experiencia: ");
			Humano h = (Humano)u;
			texto.append(h.getExp() + "\n");	
		}
		texto.append("Movimientos: ");
		texto.append(u.getAccionesRestantes()+"/"+u.getAcciones()+ "\n");
		
		if (u.getClass().getSuperclass() == Transporte.class){
			texto.append("Pasajeros: ");
			Transporte t = (Transporte)u;
			texto.append(t.getPasajerosABordo()+"/"+t.getCapacidad()+"\n");	
		}
			
		this.add(texto);		
	}
			
	public static VentanaEstadoUnidad getInstance() {
		return instance;
	}
	
	public static void create(Unidad u){		
		instance = new VentanaEstadoUnidad(u);		
	}	
}